package com.relytosoft.mizar.media.system.services.service;

import com.relytosoft.mizar.media.system.api.entity.SysDistrict;
import com.relytosoft.mizar.media.system.api.entity.SysRelatedPlatform;
import com.relytosoft.mizar.media.system.api.pojo.vo.DistrictSyncVo;
import com.relytosoft.mizar.media.system.api.pojo.dto.DistrictFeignDto;

import java.util.List;

/**
 * 区域信息同步处理
 *
 * @Author SunLi
 * @Date: 2022/4/8 10:07
 * @Version 1.0
 */
public interface DistrictSyncService {
    /**
     * 添加区域同步记录
     * @param entity 区域信息
     * @return
     */
    Integer insertDistrictSync(SysDistrict entity);

    /**
     * 检查根区域同步
     */
    void checkRootDistrictSync();

    /**
     * 区域列表同步
     * @param sysDistrictList 待同步区域列表
     */
    void districtListSync(List<DistrictSyncVo> sysDistrictList);

    /**
     * 区域同步
     * @param entity 待同步区域
     * @param relatedPlatFormId 第三方平台关联信息ID
     */
    void districtSync(SysDistrict entity, Integer relatedPlatFormId);

    /**
     * 根据第三方平台关联信息ID获取关联信息
     * @return
     */
    List<SysRelatedPlatform> selectRelatedPlatformList();

    /**
     * 查询所有区域列表（包含第三方平台区域关联ID）
     * @return
     */
    List<DistrictFeignDto> selectDistrictList();
}
